Chi tiết FlexRay

Clock

Hệ thống FlexRay gồm có một bus và các processor (electronic control unit, hay ECU).

Mỗi ECU có một clock độc lập. Clock drift phải nhỏ hơn 0.15% so với clock reference, sao cho chênh lệch giữa clock chậm nhất và clock nhanh nhất trong hệ thống không lớn hơn 0.3%.

Điều này có nghĩa là nếu ECU-s là một sender (bên gửi) và ECU-r là một receiver (bên nhận), thì trong mỗi 300 chu kì sender sẽ có từ 299 đến 301 chu kì receiver. Các clock được tái đồng bộ đủ thường xuyên để bảo đảm không xảy ra vấn đề. Clock được gửi trong segment tĩnh.[6]

Bit trên bus

000000111111110000
000000001111111100

Sửa lỗi trung bình trong trường hợp không có lỗi. Tín hiệu chỉ bị trễ 2 chu kì.

000000111101110000
000000001111111100

Các lỗi ở gần chính giữa vùng chu kì 8 (8-cycle region) bị hủy bỏ.

00010111111110000
00000011111111100

Các lỗi gần biên của vùng 8 chu kì (8-cycle region) có thể ảnh hưởng lên bit biên.

Mỗi lần chỉ có một ECU ghi lên bus. Mỗi bit gửi đi được giữ trên bus trong 8 chu kì clock lấy mẫu (sample clock).

Receiver giữ bộ đệm lưu 5 sample cuối, và dùng phần đa số (majority) của 5 sample cuối làm tín hiệu vào (input signal).

Các lỗi truyền chu kì đơn có thể ảnh hưởng đến kết quả gần vùng biên của các bit, nhưng sẽ không ảnh hưởng đến chu kì ở giữa vùng chu kì 8.

Các bit sample

Giá trị của bit được sample ở chính giữa vùng 8-bit.Các lỗi được dịch về các chu kì tận cùng và clock thì được đồng bộ hóa đủ thường xuyên để drift đủ nhỏ. (Drift nhỏ hơn 1 chu kì trên 300 chu kì, và suốt quá trình truyền clock được đồng bộ hóa hơn một lần trong mỗi 300 chu kì).

Frame

Giao tiếp truyền tin thông qua các frame. Tin nhắn gồm có các byte { x 0 , x 1 , … , x m − 1 } {\displaystyle \{x_{0},x_{1},\dots ,x_{m-1}\}} , được đóng gói như sau:

  • Transmission Start Signal (TSS, Tín hiệu Bắc đầu Truyền) – bit 0
  • Frame Start Signal (FSS, Tín hiệu bắt đầu Frame) – bit 1
  • m lần:
    • Byte Start Signal 0 (BSS0, Tín hiệu bắt đầu byte 0) – bit 1
    • Byte Start Signal 1 (BSS1, Tín hiệu bắt đầu byte 1) – bit 0
    • Bit 0 của byte thứ i
    • Bit 1 của byte thứ i
    • Bit 2 của byte thứ i
    • ...
    • Bit 7 của byte thứ i
  • Frame End Signal (FES, Tín hiệu kết thúc Frame) – bit 0
  • Transmission End Signal (TES, Tín hiệu kết thúc truyền) – bit 1

Nếu không có gì được truyền đi, bus sẽ được giữ ở trạng thái 1 (điện thế cao), để tất cả các receiver biết rằng việc liên lạc đã bắt đầu khi điện thế rơi xuống 0.

Receiver biết tin nhắn đã được gửi đi hoàn toàn hay chưa bằng cách kiểm tra BSS0 (1) hoặc FES (0) đã được nhận hay chưa.

Lưu ý 8-chu kì trên 1 bit không liên quan gì đến các byte. Cần 80 chu kì để truyền đi một byte. 16 chu kì dành cho BSS0 và BSS1 và 64 chu kì dành cho các bit của nó.Cũng lưu ý rằng BSS0 có giá trị 1, và BSS1 có giá trị 0.

Tài liệu tham khảo

WikiPedia: FlexRay http://ae-plus.com/milestones/milestones-flexray http://ae-plus.com/vehicle-development/mercedes-be... http://www.eetimes.com/document.asp?doc_id=1256700 http://www.insideline.com/audi/a8/2011/2011-audi-a... http://zone.ni.com/devzone/cda/tut/p/id/3352 http://link.springer.com/article/10.1365/s40111-01... http://www.hanser-automotive.de/fileadmin/heftarch... //doi.org/10.1365%2Fs40111-010-0269-9 http://www.iso.org/iso/home/store/catalogue_tc/cat... http://www.iso.org/iso/home/store/catalogue_tc/cat...